From 5a997f0f37b8ecf340f887659366802c14afea46 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Thu, 7 Jul 2005 19:05:33 +0000 Subject: [PATCH] Don't generate events on destroyed windows. 2005-07-07 Matthias Clasen * gdk/x11/gdkmain-x11.c (generate_grab_broken_event): Don't generate events on destroyed windows. --- ChangeLog | 3 +++ ChangeLog.pre-2-10 | 3 +++ ChangeLog.pre-2-8 | 3 +++ gdk/x11/gdkmain-x11.c | 21 ++++++++++++--------- 4 files changed, 21 insertions(+), 9 deletions(-) diff --git a/ChangeLog b/ChangeLog index ea0ef9218e..8d972b7659 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2005-07-07 Matthias Clasen + * gdk/x11/gdkmain-x11.c (generate_grab_broken_event): Don't + generate events on destroyed windows. + Implement Drag-and-Drop to the file list. (#145121, Sven Neumann) * gtk/gtkfilechooserdefault.c (file_list_drag_data_received_cb) diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index ea0ef9218e..8d972b7659 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,5 +1,8 @@ 2005-07-07 Matthias Clasen + * gdk/x11/gdkmain-x11.c (generate_grab_broken_event): Don't + generate events on destroyed windows. + Implement Drag-and-Drop to the file list. (#145121, Sven Neumann) * gtk/gtkfilechooserdefault.c (file_list_drag_data_received_cb) diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index ea0ef9218e..8d972b7659 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,5 +1,8 @@ 2005-07-07 Matthias Clasen + * gdk/x11/gdkmain-x11.c (generate_grab_broken_event): Don't + generate events on destroyed windows. + Implement Drag-and-Drop to the file list. (#145121, Sven Neumann) * gtk/gtkfilechooserdefault.c (file_list_drag_data_received_cb) diff --git a/gdk/x11/gdkmain-x11.c b/gdk/x11/gdkmain-x11.c index 985b2b5dce..9b8ee95545 100644 --- a/gdk/x11/gdkmain-x11.c +++ b/gdk/x11/gdkmain-x11.c @@ -143,16 +143,19 @@ generate_grab_broken_event (GdkWindow *window, gboolean implicit, GdkWindow *grab_window) { - GdkEvent event; + if (!GDK_WINDOW_DESTROYED (window)) + { + GdkEvent event; - event.type = GDK_GRAB_BROKEN; - event.grab_broken.window = window; - event.grab_broken.send_event = 0; - event.grab_broken.keyboard = keyboard; - event.grab_broken.implicit = implicit; - event.grab_broken.grab_window = grab_window; - - gdk_event_put (&event); + event.type = GDK_GRAB_BROKEN; + event.grab_broken.window = window; + event.grab_broken.send_event = 0; + event.grab_broken.keyboard = keyboard; + event.grab_broken.implicit = implicit; + event.grab_broken.grab_window = grab_window; + + gdk_event_put (&event); + } } /* -- 2.30.2